Large enterprises receive numerous telephone calls, each of which must be routed in accordance with callers' instructions. Calls typically are routed by a human operator or an automated call routing system (commonly referred to as an “automated attendant” or “autoattendant”). Human operators typically route calls accurately and efficiently, but at a relatively high cost. Autoattendant systems, on the other hand, typically are inexpensive to implement and function very quickly.
Traditionally, autoattendants play an announcement to the caller and prompt a caller to make one of multiple selections using a voice response unit. For example, the caller may be prompted to dial the extension of the party being called. The caller also may be given other options, such as leaving a voice message or accessing a directory of names if the extension of the called party is not known. Some early automated telephone directories required the caller to spell the name of the called party using a telephone dual-tone multifrequency (DTMF) keypad. Most recent autoattendant systems are voice-enabled, allowing callers to be routed to a desired call destination simply by speaking the name of the call destination. In these systems, an autoattendant answers an incoming call and asks the caller to speak the name of the party or department being called. The autoattendant includes a speaker-independent speech recognition engine that identifies and translates a received speech signal into name data. The autoattendant obtains a telephone number corresponding to the translated name data from a telephone number directory based on the translated name data, and routes the call to that telephone number.
Presence-based communications applications are entering the mainstream telecommunications environment. In such applications, a user maintains one or more “contact lists” of other parties whose presence status is to be monitored and displayed to the user. If the other party is determined to be “present,” the user's contact list will display the available status. The user can then contact the other party for example via a telephone call.
The existing presence based real-time communication systems allow users to determine how and where to receive incoming calls. Further, users of a presence based communication system are able to obtain another user's future availability with a Tell-Me-When feature which sends a message to the user that the other user is able to be contacted. Outside callers have been able to get a general sense for how to contact an individual at a later time by the call recipient setting an announcement detailing how to get a hold of them at a later time. However, presently, presence based communication systems do not allow for an outside party to obtain a call recipient's future voice or calendar availability. It is possible for a user to leave his(er) future availability in a specific announcement to be given to a caller when they call. However, this must be done manually by the user and must be changed each time the user's future availability changes. Further, this manual system does not account for time zone changes. For example, if the caller is in EST (Eastern Standard Time) and the recipient is in PCT (Pacific Coast Time).
Therefore, it is desirable to have a system that allows a user outside of a presence based telecommunications system to obtain the future availability of a call recipient.